#pragma once

#include <d3dx10.h>
#include "OMInterface.h"

class COMInterfaceDX10: public COMInterfaceBase
{
private:
    ID3D10RenderTargetView **m_ppRTV;
    ID3D10DepthStencilView  *m_pDSV;
    ID3D10RenderTargetView  *m_pOrigRTV;
    ID3D10DepthStencilView  *m_pOrigDSV;
    D3D10_VIEWPORT           m_ViewPort;
    D3D10_VIEWPORT           m_PrevViewPort;

public:
    COMInterfaceDX10                 ( );
    ~COMInterfaceDX10                ( );
    virtual mVoid SaveCurrentRT      ( );
    virtual mVoid RestoreRT          ( );
    virtual mVoid CreateRenderTarget ( CTexture2D *a_pTexture[], mUInt a_uRenderTargetsCount );
    virtual mVoid CreateDepthStencil ( CTexture2D *a_pTexture );
    virtual mVoid SetRenderTargets   ( );
};
